﻿using System.ComponentModel.DataAnnotations;
using YNTK.Dependency;

namespace YNTK.SimpleWorkflow.Entitys
{
    /// <summary>
    /// 添加工作流流程节点请求模型
    /// </summary>
    [SuppressSniffer]
    public class AddSimpleWorkflowConfigurationRequestModel
    {
        /// <summary>
        /// 类型(0.自定义 1.通用)
        /// </summary>
        public int? type { get; set; }

        /// <summary>
        /// 工作流分类id,自定义的传的是工作流分类id,通用的是传的是通过表单id
        /// </summary>
       [Required(ErrorMessage = "工作流分类标识不能为空")]
        public string classifyId { get; set; }

        /// <summary>
        /// 流程节点名称
        /// </summary>
        [Required(ErrorMessage = "流程节点名称不能为空")]
        public string nodeName { get; set; }

        /// <summary>
        /// 是否允许驳回
        /// </summary>
        public bool rejected { get; set; } = false;

        /// <summary>
        /// 是否为发起人确认
        /// </summary>
        public bool confirm { get; set; } = false;

        /// <summary>
        /// 是否需要签字
        /// </summary>
        public bool signature { get; set; } = false;

        /// <summary>
        /// 审核机构id,如果是发起人则不需要设置这个
        /// </summary>
        public string mechanismId { get; set; }

        /// <summary>
        /// 审核角色id,如果是发起人则不需要设置这个
        /// </summary>
        public string roleId { get; set; }

        /// <summary>
        /// 审核用户id数组,如果是发起人则不需要设置这个
        /// </summary>
        public string[] userIds { get; set; }

        /// <summary>
        /// 启用/禁用,1.启用
        /// </summary>
        public int? enabledMark { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string description { get; set; }
    }
}
